home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CU Amiga Super CD-ROM 6
/
CU Amiga Magazine's Super CD-ROM 06 (1996)(EMAP Images)(GB)(Track 1 of 4)[!][issue 1997-01].iso
/
cucd
/
readers
/
utils
/
gui4cli
/
demos
/
keyboard.g
< prev
next >
Wrap
Text File
|
1996-10-28
|
7KB
|
417 lines
G4C - Keyboard.g by D.Keletsekis - 1996
; This is a little keyboard that appears when called on from other GUIs,
; according to 3 variables you have to set from the calling GUI, it
; will send it's output to the gadget specified.
WINBIG -1 -1 160 113 "KeyBoard"
WinOnMouse 50 30
WinType 11110001 ; Its got all the gadgets & is resizable
BOX 0 0 0 0 OUT BUTTON ; a window sized beveled box, just for kicks..
xONLOAD
setvar kbdCase U ; Start with Upper case letters
xOnRMB
GuiClose keyboard.g
xOnOpen
setvar kbdDummy "" ; Look at the update routine
;==========================> EXIT & Words buttons
xCYCLER 5 3 100 14 "" kbdCase ; This cycler will choose the Case
CSTR "UPPER" U
CSTR "lower" L
xBUTTON 105 3 25 14 < ; BackSpace button
setvar kbdLetter BACK
gosub keyboard.g KbdUpdate
xBUTTON 130 3 25 14 C ; Clear all button
setvar kbdLetter CLEAR
gosub keyboard.g KbdUpdate
;=========================> UPDATE routine
xROUTINE KbdUpdate
if $kbdLetter = CLEAR
setvar $kbdBuffer ""
else
if $kbdLetter = BACK
cutvar $kbdBuffer CUT CHAR -1 ""
else
AppVar $kbdBuffer $kbdLetter
endif
endif
setvar kbdDummy \$$kbdBuffer ; put a $ in front
docase $kbdGadID
case = 1
update $kbdGui 1 $kbdDummy
break
case = 2
update $kbdGui 2 $kbdDummy
break
case = 3
update $kbdGui 3 $kbdDummy
break
endcase
; NOTE: when keyboard.g is first opened, the variable kbdBuffer is set
; by the calling GUI to the name of the buffer we want to edit, so we
; can setvar, cutvar or appvar the correct variable.
; Afterwards, we use the "kbdDummy" variable to get the contents of
; the variable whose name is in kbdBuffer, for the update command,
; by storing into kbdDummy the contents of kbdBuffer with a $ in
; front of it (like a pointer to a pointer in C :)
;==========================> Letter buttons
xBUTTON 5 20 15 14 Q ; First row
if $kbdCase = U
SetVar kbdLetter Q
else
SetVar kbdLetter q
endif
gosub keyboard.g KbdUpdate
xBUTTON 20 20 15 14 W
if $kbdCase = U
SetVar kbdLetter W
else
SetVar kbdLetter w
endif
gosub keyboard.g KbdUpdate
xBUTTON 35 20 15 14 E
if $kbdCase = U
SetVar kbdLetter E
else
SetVar kbdLetter e
endif
gosub keyboard.g KbdUpdate
xBUTTON 50 20 15 14 R
if $kbdCase = U
SetVar kbdLetter R
else
SetVar kbdLetter r
endif
gosub keyboard.g KbdUpdate
xBUTTON 65 20 15 14 T
if $kbdCase = U
SetVar kbdLetter T
else
SetVar kbdLetter t
endif
gosub keyboard.g KbdUpdate
xBUTTON 80 20 15 14 Y
if $kbdCase = U
SetVar kbdLetter Y
else
SetVar kbdLetter y
endif
gosub keyboard.g KbdUpdate
xBUTTON 95 20 15 14 U
if $kbdCase = U
SetVar kbdLetter U
else
SetVar kbdLetter u
endif
gosub keyboard.g KbdUpdate
xBUTTON 110 20 15 14 I
if $kbdCase = U
SetVar kbdLetter I
else
SetVar kbdLetter i
endif
gosub keyboard.g KbdUpdate
xBUTTON 125 20 15 14 O
if $kbdCase = U
SetVar kbdLetter O
else
SetVar kbdLetter o
endif
gosub keyboard.g KbdUpdate
xBUTTON 140 20 15 14 P
if $kbdCase = U
SetVar kbdLetter P
else
SetVar kbdLetter p
endif
gosub keyboard.g KbdUpdate
xBUTTON 5 35 15 14 A ; 2nd row
if $kbdCase = U
SetVar kbdLetter A
else
SetVar kbdLetter a
endif
gosub keyboard.g KbdUpdate
xBUTTON 20 35 15 14 S
if $kbdCase = U
SetVar kbdLetter S
else
SetVar kbdLetter s
endif
gosub keyboard.g KbdUpdate
xBUTTON 35 35 15 14 D
if $kbdCase = U
SetVar kbdLetter D
else
SetVar kbdLetter d
endif
gosub keyboard.g KbdUpdate
xBUTTON 50 35 15 14 F
if $kbdCase = U
SetVar kbdLetter F
else
SetVar kbdLetter f
endif
gosub keyboard.g KbdUpdate
xBUTTON 65 35 15 14 G
if $kbdCase = U
SetVar kbdLetter G
else
SetVar kbdLetter g
endif
gosub keyboard.g KbdUpdate
xBUTTON 80 35 15 14 H
if $kbdCase = U
SetVar kbdLetter H
else
SetVar kbdLetter h
endif
gosub keyboard.g KbdUpdate
xBUTTON 95 35 15 14 J
if $kbdCase = U
SetVar kbdLetter J
else
SetVar kbdLetter j
endif
gosub keyboard.g KbdUpdate
xBUTTON 110 35 15 14 K
if $kbdCase = U
SetVar kbdLetter K
else
SetVar kbdLetter k
endif
gosub keyboard.g KbdUpdate
xBUTTON 125 35 15 14 L
if $kbdCase = U
SetVar kbdLetter L
else
SetVar kbdLetter l
endif
gosub keyboard.g KbdUpdate
xBUTTON 140 35 15 14 '"'
SetVar kbdLetter '"'
gosub keyboard.g KbdUpdate
xBUTTON 5 50 15 14 < ; 3rd row
SetVar kbdLetter <
gosub keyboard.g KbdUpdate
xBUTTON 20 50 15 14 Z
if $kbdCase = U
SetVar kbdLetter Z
else
SetVar kbdLetter z
endif
gosub keyboard.g KbdUpdate
xBUTTON 35 50 15 14 X
if $kbdCase = U
SetVar kbdLetter X
else
SetVar kbdLetter x
endif
gosub keyboard.g KbdUpdate
xBUTTON 50 50 15 14 C
if $kbdCase = U
SetVar kbdLetter C
else
SetVar kbdLetter c
endif
gosub keyboard.g KbdUpdate
xBUTTON 65 50 15 14 V
if $kbdCase = U
SetVar kbdLetter V
else
SetVar kbdLetter v
endif
gosub keyboard.g KbdUpdate
xBUTTON 80 50 15 14 B
if $kbdCase = U
SetVar kbdLetter B
else
SetVar kbdLetter b
endif
gosub keyboard.g KbdUpdate
xBUTTON 95 50 15 14 N
if $kbdCase = U
SetVar kbdLetter N
else
SetVar kbdLetter n
endif
gosub keyboard.g KbdUpdate
xBUTTON 110 50 15 14 M
if $kbdCase = U
SetVar kbdLetter M
else
SetVar kbdLetter m
endif
gosub keyboard.g KbdUpdate
xBUTTON 125 50 15 14 >
SetVar kbdLetter >
gosub keyboard.g KbdUpdate
xBUTTON 140 50 15 14 .
SetVar kbdLetter .
gosub keyboard.g KbdUpdate
xBUTTON 5 65 15 14 ! ; 4th row
SetVar kbdLetter !
gosub keyboard.g KbdUpdate
xBUTTON 20 65 15 14 @
SetVar kbdLetter @
gosub keyboard.g KbdUpdate
xBUTTON 35 65 15 14 #
SetVar kbdLetter #
gosub keyboard.g KbdUpdate
xBUTTON 50 65 60 14 Space
SetVar kbdLetter " "
gosub keyboard.g KbdUpdate
xBUTTON 110 65 15 14 %
SetVar kbdLetter %
gosub keyboard.g KbdUpdate
xBUTTON 125 65 15 14 "^"
SetVar kbdLetter "^"
gosub keyboard.g KbdUpdate
xBUTTON 140 65 15 14 &
SetVar kbdLetter &
gosub keyboard.g KbdUpdate
xBUTTON 5 80 15 14 1 ; 5th row
SetVar kbdLetter 1
gosub keyboard.g KbdUpdate
xBUTTON 20 80 15 14 2
SetVar kbdLetter 2
gosub keyboard.g KbdUpdate
xBUTTON 35 80 15 14 3
SetVar kbdLetter 3
gosub keyboard.g KbdUpdate
xBUTTON 50 80 15 14 4
SetVar kbdLetter 4
gosub keyboard.g KbdUpdate
xBUTTON 65 80 15 14 5
SetVar kbdLetter 5
gosub keyboard.g KbdUpdate
xBUTTON 80 80 15 14 6
SetVar kbdLetter 6
gosub keyboard.g KbdUpdate
xBUTTON 95 80 15 14 7
SetVar kbdLetter 7
gosub keyboard.g KbdUpdate
xBUTTON 110 80 15 14 8
SetVar kbdLetter 8
gosub keyboard.g KbdUpdate
xBUTTON 125 80 15 14 9
SetVar kbdLetter 9
gosub keyboard.g KbdUpdate
xBUTTON 140 80 15 14 0
SetVar kbdLetter 0
gosub keyboard.g KbdUpdate
xBUTTON 5 95 15 14 ( ; 6th row
SetVar kbdLetter (
gosub keyboard.g KbdUpdate
xBUTTON 20 95 15 14 )
SetVar kbdLetter )
gosub keyboard.g KbdUpdate
xBUTTON 35 95 15 14 +
SetVar kbdLetter +
gosub keyboard.g KbdUpdate
xBUTTON 50 95 15 14 -
SetVar kbdLetter -
gosub keyboard.g KbdUpdate
xBUTTON 65 95 15 14 *
SetVar kbdLetter *
gosub keyboard.g KbdUpdate
xBUTTON 80 95 15 14 /
SetVar kbdLetter /
gosub keyboard.g KbdUpdate
xBUTTON 95 95 15 14 =
SetVar kbdLetter =
gosub keyboard.g KbdUpdate
xBUTTON 110 95 15 14 :
SetVar kbdLetter :
gosub keyboard.g KbdUpdate
xBUTTON 125 95 15 14 "'"
SetVar kbdLetter "'"
gosub keyboard.g KbdUpdate
xBUTTON 140 95 15 14 ','
SetVar kbdLetter ','
gosub keyboard.g KbdUpdate